﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;
using System.Data.Linq.Mapping;

namespace LPF.Lib.DataAccess
{
    public class Invoice
    {
        public int Id { get; set; }
        public DateTime InvoiceDate { get; set; }
        public string CustomerName { get; set; }
        public string CustomerPhone { get; set; }
        public string CustomerEmail { get; set; }
        public string CustomerAddress { get; set; }
        public string Notes { get; set; }
    }

    public class InvoiceProduct
    {
        public int InvoiceId { get; set; }
        public string ProductName { get; set; }
        public double UnitPrice { get; set; }
        public double SellingPrice { get; set; }
        public int Amount { get; set; }
    }

    public class Product
    {
        public string ProductName { get; set; }
        public double UnitPrice { get; set; }
        public byte UnitOfWeight { get; set; }
        public string ProductSign { get; set; }
        public double? SellingPrice { get; set; }
        public string Notes { get; set; }
    }

    public class Repository
    {
        public int Id { get; set; }
        public string ProductName { get; set; }
        public float UnitPrice { get; set; }
        public int TotalInventory { get; set; }
        public string Location { get; set; }
        public string Notes { get; set; }
    }

    public class RepositoryHistory
    {
        public int Id { get; set; }
        public int RepositoryId { get; set; }
        public byte Action { get; set; }
        public DateTime ActionDate { get; set; }
        public TimeSpan? ActionTime { get; set; }
        public int ProductEffect { get; set; }
        public string ActionReason { get; set; }
        public string Notes { get; set; }
    }
}
